Dynomotion

Group: DynoMotion Message: 9546 From: ricochetproducts Date: 5/26/2014
Subject: Tool Tables

Hi Tom,   Is there a FAQ for tool tables and how to use it?  I can't seem to find a explanation on how to set up for use of tool tables.  Do I need to run a stand a lone C program? if so, What and When do I run the program? Do I need to find the Tool zero and enter the values in the table or does the program run and set values in the table automatic?  Can you explain or point me in the right direction?


Sorry for all the questions but I am lost.


Thanks for any help you can give.


..Ricochet

Group: DynoMotion Message: 9548 From: Tom Kerekes Date: 5/26/2014
Subject: Re: Tool Tables
Hi Ricochet,

It depends on how you you wish things to work.  There are a number of ways to make use of the Tool Table.  I'm not very experienced.

Please use the latest Test Version 4.33b that has the latest Tool table format where tools in the table can be selected by Slot or ID.

I suppose it also matters whether you have an automatic tool changer, or a probe capability, or use a gauge block of a certain thickness, etc.

We include a C Program (ToolTableSet.c) that when run will adjust the Tool Table's Length setting for the currently selected tool to a value that will make the current GCode Position (DRO) zero.  You can set a User Button to Run This.

So for example you might use one tool as a "master" tool, then jog the tool till it touches a surface, and zero the Z DRO.  Then load and select all other Tools one-by-one, Jog the tool to touch the same surface, and Run ToolTableSet.c.  The final result should be the Tool Table Lengths will be set such that no matter what tool is loaded and selected, if you command Z to some coordinate the tool tip will be at the same height.

One other source of confusion is that the T value represents the Tool that is to be loaded (and the ToolTableSet.c uses the T value for which tool table entry to modify), but to actually have a Tool Length have an effect on the GCode Position or the DRO Display then Tool Length Compensation needs to be turned on (G43) and the Tool Table Entry that is to be used for the Compensation needs to be specified by the H value.   

HTH
Regards
TK


Group: DynoMotion Message: 9549 From: Steve Klemp Date: 5/27/2014
Subject: Re: Tool Tables
Hi Tom,  .
  I do not have a tool changer. I was planing to use a dial indicated tool setter that is calibrated and set to a known height.  I was not aware of a probing function for Kmotion.  I have been using this function on a router with Mach.  This would be my preferred method.  Can you point me in the right direction to setup a Z axis probe function that will utilize the tool table function.  

Thanks for all your help
 
.....Steve
            
 


On Monday, May 26, 2014 10:08 PM, "Tom Kerekes tk@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Ricochet,

It depends on how you you wish things to work.  There are a number of ways to make use of the Tool Table.  I'm not very experienced.

Please use the latest Test Version 4.33b that has the latest Tool table format where tools in the table can be selected by Slot or ID.

I suppose it also matters whether you have an automatic tool changer, or a probe capability, or use a gauge block of a certain thickness, etc.

We include a C Program (ToolTableSet.c) that when run will adjust the Tool Table's Length setting for the currently selected tool to a value that will make the current GCode Position (DRO) zero.  You can set a User Button to Run This.

So for example you might use one tool as a "master" tool, then jog the tool till it touches a surface, and zero the Z DRO.  Then load and select all other Tools one-by-one, Jog the tool to touch the same surface, and Run ToolTableSet.c.  The final result should be the Tool Table Lengths will be set such that no matter what tool is loaded and selected, if you command Z to some coordinate the tool tip will be at the same height.

One other source of confusion is that the T value represents the Tool that is to be loaded (and the ToolTableSet.c uses the T value for which tool table entry to modify), but to actually have a Tool Length have an effect on the GCode Position or the DRO Display then Tool Length Compensation needs to be turned on (G43) and the Tool Table Entry that is to be used for the Compensation needs to be specified by the H value.   

HTH
Regards
TK


Group: DynoMotion Message: 9559 From: Tom Kerekes Date: 5/27/2014
Subject: Re: Tool Tables
Hi Steve,

It isn't clear what you mean.  Do you have a probe that triggers an input when the tool touches it?  How is it wired?  To what Input?

Regards
TK

Group: DynoMotion Message: 9560 From: Steve Klemp Date: 5/27/2014
Subject: Re: Tool Tables
Hi Tom,  Yes, I have a probe wired to my Konnect board  Input 1040   when the tool touches it the input goes high.  Right now the input only turns on an indicator lamp an the control,  I want to have it store a value to the tool table.
 
.....Steve
            
 


On Tuesday, May 27, 2014 4:57 PM, "Tom Kerekes tk@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Steve,

It isn't clear what you mean.  Do you have a probe that triggers an input when the tool touches it?  How is it wired?  To what Input?

Regards
TK

Group: DynoMotion Message: 9562 From: Tom Kerekes Date: 5/27/2014
Subject: Re: Tool Tables
Hi Steve,

You didn't describe your system. 

I assume Z is axis #2?

Negative will move the tool down?

What is the Resolution and how fast do you want to move?

Here is a simple program to just move z negative at 100steps/sec until the probe signal goes high and stop.

See if you can understand it and get it to work.  If so then the code can be added to the beginning of ToolTableSet.c

#include "KMotionDef.h"
main()
{
    Jog(2,-100);                            // move Z down slowly
    while (!ReadBit(1040)) ;           // wait for switch to go high
    Jog(2,0);                                // Stop
}

Let us know how far you get.

Regards
TK

Group: DynoMotion Message: 9564 From: Steve Klemp Date: 5/28/2014
Subject: Re: Tool Tables
Hi Tom,  Yes my Z axis is ch2  & moving negative will move the tool down.
My resolution is 10,625 (steps/sec) 25,628 cnts/inch

I have been able to run the code for jog motion. No problems

I haven't . added the code to the beginning of ToolTableSet.c yet.  not totally sure how to do that yet. 

Will this code will run in a separate thread from the init file?  Will it be initiated by a user button? 







.....Steve
            
 


On Tuesday, May 27, 2014 11:27 PM, "Tom Kerekes tk@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Steve,

You didn't describe your system. 

I assume Z is axis #2?

Negative will move the tool down?

What is the Resolution and how fast do you want to move?

Here is a simple program to just move z negative at 100steps/sec until the probe signal goes high and stop.

See if you can understand it and get it to work.  If so then the code can be added to the beginning of ToolTableSet.c

#include "KMotionDef.h"
main()
{
    Jog(2,-100);                            // move Z down slowly
    while (!ReadBit(1040)) ;           // wait for switch to go high
    Jog(2,0);                                // Stop
}

Let us know how far you get.

Regards
TK


From: "Steve Klemp steveklemp@... [DynoMotion]" <DynoMotion@yahoogroups.com>
To: "DynoMotion@yahoogroups.com" <DynoMotion@yahoogroups.com>
Sent: Tuesday, May 27, 2014 5:20 PM
Subject: Re: [DynoMotion] Tool Tables

 
Hi Tom,  Yes, I have a probe wired to my Konnect board  Input 1040   when the tool touches it the input goes high.  Right now the input only turns on an indicator lamp an the control,  I want to have it store a value to the tool table.
 
.....Steve
            
 


On Tuesday, May 27, 2014 4:57 PM, "Tom Kerekes tk@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Steve,

It isn't clear what you mean.  Do you have a probe that triggers an input when the tool touches it?  How is it wired?  To what Input?

Regards
TK


From: "Steve Klemp steveklemp@... [DynoMotion]" <DynoMotion@yahoogroups.com>
To: "DynoMotion@yahoogroups.com" <DynoMotion@yahoogroups.com>
Sent: Tuesday, May 27, 2014 3:23 AM
Subject: Re: [DynoMotion] Tool Tables

 
Hi Tom,  .
  I do not have a tool changer. I was planing to use a dial indicated tool setter that is calibrated and set to a known height.  I was not aware of a probing function for Kmotion.  I have been using this function on a router with Mach.  This would be my preferred method.  Can you point me in the right direction to setup a Z axis probe function that will utilize the tool table function.  

Thanks for all your help
 
.....Steve
            
 


On Monday, May 26, 2014 10:08 PM, "Tom Kerekes tk@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Ricochet,

It depends on how you you wish things to work.  There are a number of ways to make use of the Tool Table.  I'm not very experienced.

Please use the latest Test Version 4.33b that has the latest Tool table format where tools in the table can be selected by Slot or ID.

I suppose it also matters whether you have an automatic tool changer, or a probe capability, or use a gauge block of a certain thickness, etc.

We include a C Program (ToolTableSet.c) that when run will adjust the Tool Table's Length setting for the currently selected tool to a value that will make the current GCode Position (DRO) zero.  You can set a User Button to Run This.

So for example you might use one tool as a "master" tool, then jog the tool till it touches a surface, and zero the Z DRO.  Then load and select all other Tools one-by-one, Jog the tool to touch the same surface, and Run ToolTableSet.c.  The final result should be the Tool Table Lengths will be set such that no matter what tool is loaded and selected, if you command Z to some coordinate the tool tip will be at the same height.

One other source of confusion is that the T value represents the Tool that is to be loaded (and the ToolTableSet.c uses the T value for which tool table entry to modify), but to actually have a Tool Length have an effect on the GCode Position or the DRO Display then Tool Length Compensation needs to be turned on (G43) and the Tool Table Entry that is to be used for the Compensation needs to be specified by the H value.   

HTH
Regards
TK



From: "steveklemp@... [DynoMotion]" <DynoMotion@yahoogroups.com>
To: DynoMotion@yahoogroups.com
Sent: Monday, May 26, 2014 6:08 PM
Subject: [DynoMotion] Tool Tables

 
Hi Tom,   Is there a FAQ for tool tables and how to use it?  I can't seem to find a explanation on how to set up for use of tool tables.  Do I need to run a stand a lone C program? if so, What and When do I run the program? Do I need to find the Tool zero and enter the values in the table or does the program run and set values in the table automatic?  Can you explain or point me in the right direction?

Sorry for all the questions but I am lost.

Thanks for any help you can give.

..Ricochet












Group: DynoMotion Message: 9566 From: Tom Kerekes Date: 5/28/2014
Subject: Re: Tool Tables
Hi Steve,

I assume by "no problems" that when run it does move down at a reasonable speed, touch, and stop.

If so add it to the ToolTableSet.c prrogram inside the main() fucntion.  (Just inside the first curly bracket after the word main().

Then in KMotionCNC | Tool Setup | USer Buttons create a User Button named "Probe Tool" that uses a different thread from your Init.  Usually Init will use thread #1 and other momentary programs will use 2.

Let us know how far you get.

Regards
TK




On Wed, May 28, 2014 at 4:21 AM, Steve Klemp steveklemp@... [DynoMotion] <DynoMotion@yahoogroups.com> wrote:
 

Hi Tom,  Yes my Z axis is ch2  & moving negative will move the tool down.
My resolution is 10,625 (steps/sec) 25,628 cnts/inch

I have been able to run the code for jog motion. No problems

I haven't . added the code to the beginning of ToolTableSet.c yet.  not totally sure how to do that yet. 

Will this code will run in a separate thread from the init file?  Will it be initiated by a user button? 







.....Steve
            
 


On Tuesday, May 27, 2014 11:27 PM, "Tom Kerekes tk@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Steve,

You didn't describe your system. 

I assume Z is axis #2?

Negative will move the tool down?

What is the Resolution and how fast do you want to move?

Here is a simple program to just move z negative at 100steps/sec until the probe signal goes high and stop.

See if you can understand it and get it to work.  If so then the code can be added to the beginning of ToolTableSet.c

#include "KMotionDef.h"
main()
{
    Jog(2,-100);                            // move Z down slowly
    while (!ReadBit(1040)) ;           // wait for switch to go high
    Jog(2,0);                                // Stop
}

Let us know how far you get.

Regards
TK

Group: DynoMotion Message: 9567 From: Steve Klemp Date: 5/28/2014
Subject: Re: Tool Tables
Hi Tom,  That is correct. The Z axis did jog until the tool touches the switch and makes input (1040)  go high. then motion stops.
I have added the code to the ToolTableSet.c and will try it out this evening and I will let you know on my progress.

 Thanks!
 
.....Steve
            
 


On Wednesday, May 28, 2014 12:15 PM, "Tom Kerekes tk@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Steve,

I assume by "no problems" that when run it does move down at a reasonable speed, touch, and stop.

If so add it to the ToolTableSet.c prrogram inside the main() fucntion.  (Just inside the first curly bracket after the word main().

Then in KMotionCNC | Tool Setup | USer Buttons create a User Button named "Probe Tool" that uses a different thread from your Init.  Usually Init will use thread #1 and other momentary programs will use 2.

Let us know how far you get.

Regards
TK



On Wed, May 28, 2014 at 4:21 AM, Steve Klemp steveklemp@... [DynoMotion] <DynoMotion@yahoogroups.com> wrote:
 
Hi Tom,  Yes my Z axis is ch2  & moving negative will move the tool down.
My resolution is 10,625 (steps/sec) 25,628 cnts/inch

I have been able to run the code for jog motion. No problems

I haven't . added the code to the beginning of ToolTableSet.c yet.  not totally sure how to do that yet. 

Will this code will run in a separate thread from the init file?  Will it be initiated by a user button? 







.....Steve
            
 


On Tuesday, May 27, 2014 11:27 PM, "Tom Kerekes tk@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Steve,

You didn't describe your system. 

I assume Z is axis #2?

Negative will move the tool down?

What is the Resolution and how fast do you want to move?

Here is a simple program to just move z negative at 100steps/sec until the probe signal goes high and stop.

See if you can understand it and get it to work.  If so then the code can be added to the beginning of ToolTableSet.c

#include "KMotionDef.h"
main()
{
    Jog(2,-100);                            // move Z down slowly
    while (!ReadBit(1040)) ;           // wait for switch to go high
    Jog(2,0);                                // Stop
}

Let us know how far you get.

Regards
TK

Group: DynoMotion Message: 9584 From: Steve Klemp Date: 5/29/2014
Subject: Re: Tool Tables
Hi Tom,
So far I have added the "Jog Z axis"  ToolTableSet.c program.  I have created a User Button "Probe Tool" that runs  ToolTableSet.c Thread #2

I select the tool number (1) on Kmotion CNC screen and press the "Probe Tool" button  The Z axis runs in the negative direction - 400steps/sec  and continues to move the tool down until the tool presses the switch and makes the input bit (1048) go high.  The Z axis stops,  I then open the tool table and see that the tool (1)  "Length" value matches the Z Axis position.

This is where I am at now.     I am really getting excited now!  
Your help and on going patience are a life saver.

 
.....Steve 
         (ricochet)           
 


On Wednesday, May 28, 2014 12:53 PM, "Steve Klemp steveklemp@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Tom,  That is correct. The Z axis did jog until the tool touches the switch and makes input (1040)  go high. then motion stops.
I have added the code to the ToolTableSet.c and will try it out this evening and I will let you know on my progress.

 Thanks!
 
.....Steve
            
 


On Wednesday, May 28, 2014 12:15 PM, "Tom Kerekes tk@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Steve,

I assume by "no problems" that when run it does move down at a reasonable speed, touch, and stop.

If so add it to the ToolTableSet.c prrogram inside the main() fucntion.  (Just inside the first curly bracket after the word main().

Then in KMotionCNC | Tool Setup | USer Buttons create a User Button named "Probe Tool" that uses a different thread from your Init.  Usually Init will use thread #1 and other momentary programs will use 2.

Let us know how far you get.

Regards
TK



On Wed, May 28, 2014 at 4:21 AM, Steve Klemp steveklemp@... [DynoMotion] <DynoMotion@yahoogroups.com> wrote:
 
Hi Tom,  Yes my Z axis is ch2  & moving negative will move the tool down.
My resolution is 10,625 (steps/sec) 25,628 cnts/inch

I have been able to run the code for jog motion. No problems

I haven't . added the code to the beginning of ToolTableSet.c yet.  not totally sure how to do that yet. 

Will this code will run in a separate thread from the init file?  Will it be initiated by a user button? 







.....Steve
            
 


On Tuesday, May 27, 2014 11:27 PM, "Tom Kerekes tk@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Steve,

You didn't describe your system. 

I assume Z is axis #2?

Negative will move the tool down?

What is the Resolution and how fast do you want to move?

Here is a simple program to just move z negative at 100steps/sec until the probe signal goes high and stop.

See if you can understand it and get it to work.  If so then the code can be added to the beginning of ToolTableSet.c

#include "KMotionDef.h"
main()
{
    Jog(2,-100);                            // move Z down slowly
    while (!ReadBit(1040)) ;           // wait for switch to go high
    Jog(2,0);                                // Stop
}

Let us know how far you get.

Regards
TK


From: "Steve Klemp steveklemp@... [DynoMotion]" <DynoMotion@yahoogroups.com>
To: "DynoMotion@yahoogroups.com" <DynoMotion@yahoogroups.com>
Sent: Tuesday, May 27, 2014 5:20 PM
Subject: Re: [DynoMotion] Tool Tables

 
Hi Tom,  Yes, I have a probe wired to my Konnect board  Input 1040   when the tool touches it the input goes high.  Right now the input only turns on an indicator lamp an the control,  I want to have it store a value to the tool table.
 
.....Steve
            
 


On Tuesday, May 27, 2014 4:57 PM, "Tom Kerekes tk@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Steve,

It isn't clear what you mean.  Do you have a probe that triggers an input when the tool touches it?  How is it wired?  To what Input?

Regards
TK


From: "Steve Klemp steveklemp@... [DynoMotion]" <DynoMotion@yahoogroups.com>
To: "DynoMotion@yahoogroups.com" <DynoMotion@yahoogroups.com>
Sent: Tuesday, May 27, 2014 3:23 AM
Subject: Re: [DynoMotion] Tool Tables

 
Hi Tom,  .
  I do not have a tool changer. I was planing to use a dial indicated tool setter that is calibrated and set to a known height.  I was not aware of a probing function for Kmotion.  I have been using this function on a router with Mach.  This would be my preferred method.  Can you point me in the right direction to setup a Z axis probe function that will utilize the tool table function.  

Thanks for all your help
 
.....Steve
            
 


On Monday, May 26, 2014 10:08 PM, "Tom Kerekes tk@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Ricochet,

It depends on how you you wish things to work.  There are a number of ways to make use of the Tool Table.  I'm not very experienced.

Please use the latest Test Version 4.33b that has the latest Tool table format where tools in the table can be selected by Slot or ID.

I suppose it also matters whether you have an automatic tool changer, or a probe capability, or use a gauge block of a certain thickness, etc.

We include a C Program (ToolTableSet.c) that when run will adjust the Tool Table's Length setting for the currently selected tool to a value that will make the current GCode Position (DRO) zero.  You can set a User Button to Run This.

So for example you might use one tool as a "master" tool, then jog the tool till it touches a surface, and zero the Z DRO.  Then load and select all other Tools one-by-one, Jog the tool to touch the same surface, and Run ToolTableSet.c.  The final result should be the Tool Table Lengths will be set such that no matter what tool is loaded and selected, if you command Z to some coordinate the tool tip will be at the same height.

One other source of confusion is that the T value represents the Tool that is to be loaded (and the ToolTableSet.c uses the T value for which tool table entry to modify), but to actually have a Tool Length have an effect on the GCode Position or the DRO Display then Tool Length Compensation needs to be turned on (G43) and the Tool Table Entry that is to be used for the Compensation needs to be specified by the H value.   

HTH
Regards
TK



From: "steveklemp@... [DynoMotion]" <DynoMotion@yahoogroups.com>
To: DynoMotion@yahoogroups.com
Sent: Monday, May 26, 2014 6:08 PM
Subject: [DynoMotion] Tool Tables

 
Hi Tom,   Is there a FAQ for tool tables and how to use it?  I can't seem to find a explanation on how to set up for use of tool tables.  Do I need to run a stand a lone C program? if so, What and When do I run the program? Do I need to find the Tool zero and enter the values in the table or does the program run and set values in the table automatic?  Can you explain or point me in the right direction?

Sorry for all the questions but I am lost.

Thanks for any help you can give.

..Ricochet

















Group: DynoMotion Message: 9585 From: Tom Kerekes Date: 5/29/2014
Subject: Re: Tool Tables
Hi Steve,

Well I think that should basically be it.  To actually apply the tool length compensation specified for Tool Slot=1 in the table you need to execute the GCode

H1G43

If you do so then the DRO should show zero and moving to zero should always put the tool tip to that height.

G49 turns off length compensation.  You should not be displaying Machine Coordinates.

HTH
Regards
TK




On Thu, May 29, 2014 at 5:51 PM, Steve Klemp steveklemp@... [DynoMotion] <DynoMotion@yahoogroups.com> wrote:
 

Hi Tom,
So far I have added the "Jog Z axis"  ToolTableSet.c program.  I have created a User Button "Probe Tool" that runs  ToolTableSet.c Thread #2

I select the tool number (1) on Kmotion CNC screen and press the "Probe Tool" button  The Z axis runs in the negative direction - 400steps/sec  and continues to move the tool down until the tool presses the switch and makes the input bit (1048) go high.  The Z axis stops,  I then open the tool table and see that the tool (1)  "Length" value matches the Z Axis position.

This is where I am at now.     I am really getting excited now!  
Your help and on going patience are a life saver.

 
.....Steve 
         (ricochet)           
 


On Wednesday, May 28, 2014 12:53 PM, "Steve Klemp steveklemp@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Tom,  That is correct. The Z axis did jog until the tool touches the switch and makes input (1040)  go high. then motion stops.
I have added the code to the ToolTableSet.c and will try it out this evening and I will let you know on my progress.

 Thanks!
 
.....Steve
            
 


On Wednesday, May 28, 2014 12:15 PM, "Tom Kerekes tk@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Steve,

I assume by "no problems" that when run it does move down at a reasonable speed, touch, and stop.

If so add it to the ToolTableSet.c prrogram inside the main() fucntion.  (Just inside the first curly bracket after the word main().

Then in KMotionCNC | Tool Setup | USer Buttons create a User Button named "Probe Tool" that uses a different thread from your Init.  Usually Init will use thread #1 and other momentary programs will use 2.

Let us know how far you get.

Regards
TK



On Wed, May 28, 2014 at 4:21 AM, Steve Klemp steveklemp@... [DynoMotion] <DynoMotion@yahoogroups.com> wrote:
 
Hi Tom,  Yes my Z axis is ch2  & moving negative will move the tool down.
My resolution is 10,625 (steps/sec) 25,628 cnts/inch

I have been able to run the code for jog motion. No problems

I haven't . added the code to the beginning of ToolTableSet.c yet.  not totally sure how to do that yet. 

Will this code will run in a separate thread from the init file?  Will it be initiated by a user button? 







.....Steve
            
 


On Tuesday, May 27, 2014 11:27 PM, "Tom Kerekes tk@... [DynoMotion]" <DynoMotion@yahoogroups.com> wrote:


 
Hi Steve,

You didn't describe your system. 

I assume Z is axis #2?

Negative will move the tool down?

What is the Resolution and how fast do you want to move?

Here is a simple program to just move z negative at 100steps/sec until the probe signal goes high and stop.

See if you can understand it and get it to work.  If so then the code can be added to the beginning of ToolTableSet.c

#include "KMotionDef.h"
main()
{
    Jog(2,-100);                            // move Z down slowly
    while (!ReadBit(1040)) ;           // wait for switch to go high
    Jog(2,0);                                // Stop
}

Let us know how far you get.

Regards
TK